﻿using Topshelf;

namespace WindowsTopshelfService45
{
    internal class Program
    {
        static void Main(string[] args)
        {
            //安装
            //WindowsTopshelfService45.exe install 

            //卸载
            //WindowsTopshelfService45.exe uninstall

            // 配置和运行宿主服务
            HostFactory.Run(x =>
            {
                x.Service<MyWorker>(s =>
                {
                    // 指定服务类型。这里设置为 Service
                    s.ConstructUsing(name => new MyWorker());

                    // 当服务启动后执行什么
                    s.WhenStarted(tc => tc.Start());

                    // 当服务停止后执行什么
                    s.WhenStopped(tc => tc.Stop());
                });

                // 服务用本地系统账号来运行
                x.RunAsLocalSystem();

                // 服务描述信息
                x.SetDescription("我的项目服务");
                // 服务显示名称
                x.SetDisplayName("MyProjectServiceShowName");
                // 服务名称
                x.SetServiceName("MyProjectService");
            });
        }
    }
}
